import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 服务列表返回数据
 */
public class ServiceInfoVO implements Serializable {

    private static final long serialVersionUID = 4528823520600711260L;

    private long id;                                   // 数据库ID
    private String serviceCode;                       //服务标识
    private String serviceName;                         // 		服务名称
    private String pluginCode;                     // String	否	fa6d6a53f5124eaa8983900604f38c6a	插件标识
    private String pluginName;              // String	否	商家后台	插件名称
    private String introduce;         // 	返回空	服务介绍
    private String service_logo;         // 		服务logo
    private String versionCode;         // 	f7330f46624d410fa3ed4503ca4221a1	版本标识
    private int serviceSource;              //0插件市场插件，1服务市场插件
    private int authorityLimit;               //1有权限控制，0没有    服务市场插件默认1	权限控制
    private Date created;                   //创建时间

    private int ifOrder;         // 0不订购，1订购，2上插件市场不订购    服务市场插件默认1	是否订购
    private String orderUrl;                     // 		订购地址
    private String roleCodes;                         // 	01,03 （上线前需提供码表核对）	关联角色

    private int devType;               //1 web应用 2 native应用 默认 web	插件类型
    private int pluginPosition;         //   	1工作，2桌面，3功能，4tobar，5自加载    默认显示1	插件位置
    private int platformCode;            // 	0仅京麦可用，1京麦咚咚均可用，2仅咚咚可用京麦可见，3仅咚咚可用京麦不可见，4客户端不可见	使用平台
    private String platform;               //平台，1PC，2手机，3PAD，11pc_mac,12pc_win,21手机ios,22手机安卓，31ios pad,32安卓pad	使用端
    private int autoLogin;                      //0非免登，1免登，2扫码免登    服务市场默认 0	是否免登

    private String categoryCode;         // 	f7330f46624d410fa3ed4503ca4221a1 最后一级 列表	类目标识
    private String categoryName;         // 	订单管理 列表	类目名称
    private int categoryVisible;        //1展示，0不展示 默认1	类目展示

    private String spPin;                   // 		ISV账号
    private String spNick;                      // 		ISV昵称
    private String spMobile;                     // 		ISV电话

    private String pluginOpenUrl;              //启动地址
    private int authCenter;                 //1京麦，2JOS，3kepler    服务市场默认2	授权中心

    private int has_hidden;                   //1隐藏，2显示

    private Boolean isExpiry;
    private int isAuthority;

    private int publishSource;

    private boolean isExpiredReminder = false; //是否过期提醒 默认不提醒

    private int remainingDays = -1; //提醒剩余天数 默认-1 代表不提醒

    /**
     * 订购记录中的pin
     */
    private List<String> purchasePinList;

    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public String getServiceCode() {
        return serviceCode;
    }

    public void setServiceCode(String serviceCode) {
        this.serviceCode = serviceCode;
    }

    public String getServiceName() {
        return serviceName;
    }

    public void setServiceName(String serviceName) {
        this.serviceName = serviceName;
    }

    public String getPluginCode() {
        return pluginCode;
    }

    public void setPluginCode(String pluginCode) {
        this.pluginCode = pluginCode;
    }

    public String getPluginName() {
        return pluginName;
    }

    public void setPluginName(String pluginName) {
        this.pluginName = pluginName;
    }

    public String getIntroduce() {
        return introduce;
    }

    public void setIntroduce(String introduce) {
        this.introduce = introduce;
    }

    public String getService_logo() {
        return service_logo;
    }

    public void setService_logo(String service_logo) {
        this.service_logo = service_logo;
    }

    public String getVersionCode() {
        return versionCode;
    }

    public void setVersionCode(String versionCode) {
        this.versionCode = versionCode;
    }

    public int getServiceSource() {
        return serviceSource;
    }

    public void setServiceSource(int serviceSource) {
        this.serviceSource = serviceSource;
    }

    public int getAuthorityLimit() {
        return authorityLimit;
    }

    public void setAuthorityLimit(int authorityLimit) {
        this.authorityLimit = authorityLimit;
    }

    public Date getCreated() {
        return created;
    }

    public void setCreated(Date created) {
        this.created = created;
    }

    public int getIfOrder() {
        return ifOrder;
    }

    public void setIfOrder(int ifOrder) {
        this.ifOrder = ifOrder;
    }

    public String getOrderUrl() {
        return orderUrl;
    }

    public void setOrderUrl(String orderUrl) {
        this.orderUrl = orderUrl;
    }

    public String getRoleCodes() {
        return roleCodes;
    }

    public void setRoleCodes(String roleCodes) {
        this.roleCodes = roleCodes;
    }

    public int getDevType() {
        return devType;
    }

    public void setDevType(int devType) {
        this.devType = devType;
    }

    public int getPluginPosition() {
        return pluginPosition;
    }

    public void setPluginPosition(int pluginPosition) {
        this.pluginPosition = pluginPosition;
    }

    public int getPlatformCode() {
        return platformCode;
    }

    public void setPlatformCode(int platformCode) {
        this.platformCode = platformCode;
    }

    public String getPlatform() {
        return platform;
    }

    public void setPlatform(String platform) {
        this.platform = platform;
    }

    public int getAutoLogin() {
        return autoLogin;
    }

    public void setAutoLogin(int autoLogin) {
        this.autoLogin = autoLogin;
    }

    public String getCategoryCode() {
        return categoryCode;
    }

    public void setCategoryCode(String categoryCode) {
        this.categoryCode = categoryCode;
    }

    public String getCategoryName() {
        return categoryName;
    }

    public void setCategoryName(String categoryName) {
        this.categoryName = categoryName;
    }

    public int getCategoryVisible() {
        return categoryVisible;
    }

    public void setCategoryVisible(int categoryVisible) {
        this.categoryVisible = categoryVisible;
    }

    public String getSpPin() {
        return spPin;
    }

    public void setSpPin(String spPin) {
        this.spPin = spPin;
    }

    public String getSpNick() {
        return spNick;
    }

    public void setSpNick(String spNick) {
        this.spNick = spNick;
    }

    public String getSpMobile() {
        return spMobile;
    }

    public void setSpMobile(String spMobile) {
        this.spMobile = spMobile;
    }

    public String getPluginOpenUrl() {
        return pluginOpenUrl;
    }

    public void setPluginOpenUrl(String pluginOpenUrl) {
        this.pluginOpenUrl = pluginOpenUrl;
    }

    public int getAuthCenter() {
        return authCenter;
    }

    public void setAuthCenter(int authCenter) {
        this.authCenter = authCenter;
    }

    public int getHas_hidden() {
        return has_hidden;
    }

    public void setHas_hidden(int has_hidden) {
        this.has_hidden = has_hidden;
    }

    public Boolean getExpiry() {
        return isExpiry;
    }

    public void setExpiry(Boolean expiry) {
        isExpiry = expiry;
    }

    public int getIsAuthority() {
        return isAuthority;
    }

    public void setIsAuthority(int isAuthority) {
        this.isAuthority = isAuthority;
    }

    public int getPublishSource() {
        return publishSource;
    }

    public void setPublishSource(int publishSource) {
        this.publishSource = publishSource;
    }

    public boolean isExpiredReminder() {
        return isExpiredReminder;
    }

    public void setExpiredReminder(boolean expiredReminder) {
        isExpiredReminder = expiredReminder;
    }

    public int getRemainingDays() {
        return remainingDays;
    }

    public void setRemainingDays(int remainingDays) {
        this.remainingDays = remainingDays;
    }

    public List<String> getPurchasePinList() {
        return purchasePinList;
    }

    public void setPurchasePinList(List<String> purchasePinList) {
        this.purchasePinList = purchasePinList;
    }

    @Override
    public String toString() {
        return "ServiceInfoVO{" +
                "id=" + id +
                ", serviceCode='" + serviceCode + '\'' +
                ", serviceName='" + serviceName + '\'' +
                ", pluginCode='" + pluginCode + '\'' +
                ", pluginName='" + pluginName + '\'' +
                ", introduce='" + introduce + '\'' +
                ", service_logo='" + service_logo + '\'' +
                ", versionCode='" + versionCode + '\'' +
                ", serviceSource=" + serviceSource +
                ", authorityLimit=" + authorityLimit +
                ", created=" + created +
                ", ifOrder=" + ifOrder +
                ", orderUrl='" + orderUrl + '\'' +
                ", roleCodes='" + roleCodes + '\'' +
                ", devType=" + devType +
                ", pluginPosition=" + pluginPosition +
                ", platformCode=" + platformCode +
                ", platform='" + platform + '\'' +
                ", autoLogin=" + autoLogin +
                ", categoryCode='" + categoryCode + '\'' +
                ", categoryName='" + categoryName + '\'' +
                ", categoryVisible=" + categoryVisible +
                ", spPin='" + spPin + '\'' +
                ", spNick='" + spNick + '\'' +
                ", spMobile='" + spMobile + '\'' +
                ", pluginOpenUrl='" + pluginOpenUrl + '\'' +
                ", authCenter=" + authCenter +
                ", has_hidden=" + has_hidden +
                ", isExpiry=" + isExpiry +
                ", isAuthority=" + isAuthority +
                ", publishSource=" + publishSource +
                ", isExpiredReminder=" + isExpiredReminder +
                ", remainingDays=" + remainingDays +
                ", purchasePinList=" + purchasePinList +
                '}';
    }
}
